要完成一個專案,為了快速開發,經常會使用一些gem套件協助
但是套件這麼多,腦袋裝不下啊 (泣
今天就把筆者用過的套件整理一些跟大家分享,那麼我們要開始囉~
gem | 功能 | 備註 |
---|---|---|
devise | 驗證使用者,提供快速新增修改刪除密碼的功能 | |
aasm | 狀態機,綁定事件修改狀態 | 在需要的model,include AASM ,並複製範例到model做修改 |
friendly_id | 友善的網址,提供更容易辨識的字符串,網址的呈現更親切 | |
babosa | 解決 friendly_id 在處理中文時會產生亂碼的問題,能成功在網址產生中文 | |
paranoia | 提供調用 destroy 不會直接破壞數據庫資料,而是將其隱藏的方法 | 但會干擾 unique index,使用時要注意 |
PaperTrail | 版本控管 | 可同時達到資料軟刪除功能 |
discard | 同樣屬於軟刪除,但不會覆蓋 ActiveRecord 方法,提供只想隱藏或是將數據標示不活動 | |
figaro | 當專案有敏感的資料時,透過figaro可以讓變數變成環境變數,並透過ENV去調用這些資料 | 在application.yml要製作環境變數時,冒號後記得要空白 再輸入資料喔 範例:google_app_id: 'YOUR-APP-ID' |
image_processing | 提供處理圖像上傳、縮圖 | 這個套件是本來就有的喔,只要取消註解就可以使用啦~ |
hirb-unicode | 每次進入 rails console 呼叫出來的檔案都是一坨擠在一起,透過這個套件,可以將那一坨資料整理成表格,在查看資料的時候,可以更方便喔~ | |
ffaker | 編寫你的 Rake 腳本,重複建立多筆資料 | |
kaminari | 加入分頁 | |
pagy | 加入分頁 | 效能似乎比kaminari快,但是本人專案還沒大到能感受差異 |
rspec-rails | 引入rails的測試框架 | 在vendor/.rspec 中加入--format documentation 測試時可以查看測試的內容是什麼 |
acts_as_list | 對列表資料重新排序 | |
timecop | 好用的時光機,想測試特定節日的時候可以使用,讓時間暫時假裝在某個時刻 | |
database_cleaner | 寫測試程式的時候,做數據清理,確保測試期間數據在乾淨的狀態 | |
RestClient | 發送 HTTP 請求 | |
Jbuilder | 定義JSON格式 | 內建就有囉 |
Devise-i18n | 顧名思義 真的就是 Devise I18n XDD | |
Bullet | 自動偵測 N+1 Queries | |
rails-erd | 分析 Rails 產生 ERD 圖表 |
看這篇才知道一些我所不知道的gems,期待常常有更新!
如果能把各別的套件,如何拆開來獨立來實作例子來介紹,那就更好了。
感謝肯定,這邊會持續更新的
也會努力嘗試寫一些實作例子介紹喔
感謝分享!太讚了